<?php
/* * 
 * 功能：支付宝页面跳转同步通知页面
 * 版本：3.3
 * 日期：2012-07-23
 * 说明：
 * 以下代码只是为了方便商户测试而提供的样例代码，商户可以根据自己网站的需要，按照技术文档编写,并非一定要使用该代码。
 * 该代码仅供学习和研究支付宝接口使用，只是提供一个参考。

 *************************页面功能说明*************************
 * 该页面可在本机电脑测试
 * 可放入HTML等美化页面的代码、商户业务逻辑程序代码
 * 该页面可以使用PHP开发工具调试，也可以使用写文本函数logResult，该函数已被默认关闭，见alipay_notify_class.php中的函数verifyReturn
 */

require_once("alipay.config.php");
require_once("lib/alipay_notify.class.php");
?>
<!DOCTYPE HTML>
<html>
    <head>
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<?php
if(!defined('API_IP')){
    define('API_IP', 'http://webapi.jxzhjy.com/');
//    define('API_IP', 'http://118.178.143.61:8080/');
}
//计算得出通知验证结果
$alipayNotify = new AlipayNotify($alipay_config);
$verify_result = $alipayNotify->verifyReturn();
if($verify_result) {//验证成功

    $out_trade_no = $_GET['out_trade_no'];//商户订单号
    $trade_no = $_GET['trade_no'];//支付宝交易号
//    $trade_status = $_GET['trade_status'];//交易状态

    //首先先判断该商户订单号是否已经被处理过，如果已经被处理过则无需再次处理
    $orderInfo = json_decode(file_get_contents(API_IP.'index.php?mod=trade&fm_sort=dz&action=main&do=getinfo&tm_out_trade_no='.$out_trade_no), true);
    if($orderInfo['success'] && ($orderInfo['data']['tm_status'] == 'WAIT_BUYER_PAY')){//如果获取成功，开始处理，失败的话不作处理
        //提交接口将主订单置为支付成功，将对应的订单商品置为已支付
        file_get_contents(API_IP.'index.php?mod=trade&action=main&do=notify&fm_sort=dz&tm_out_trade_no='.$out_trade_no.'&trade_no='.$trade_no);
    }
    

//    if($_GET['trade_status'] == 'TRADE_FINISHED' || $_GET['trade_status'] == 'TRADE_SUCCESS') {
//        
//    }
//    else {
//        echo "trade_status=".$_GET['trade_status'];
//    }
		
    echo "验证成功<br />";
}
else{
    //验证失败
    echo "验证失败";
}
?>
        <title>支付宝即时到账交易接口</title>
	</head>
    <body>
    </body>
</html>